from flask import Flask,jsonify,request
import json

# 实际化对象
app=Flask(__name__)

#加载配制文件
from config import Config
app.config.from_object(Config)

# 跨域配置
from flask_cors import CORS
CORS(app)

# 实现orm,对象关系映射
from flask_sqlalchemy import SQLAlchemy
db=SQLAlchemy(app)

# 创建分类表
class Cate(db.Model):
    __tablename__='cate'
    id=db.Column(db.Integer,primary_key=True,autoincrement=True)
    name=db.Column(db.String(50),unique=True)   #名称唯一
    level=db.Column(db.Integer,default=1)   #等级
    pid=db.Column(db.Integer,default=0) #等级的父id为0

# db.create_all()

#分类接口（增删改查）
@app.route('/cateM',methods=['POST','GET'])
def cateM():
    if request.methods=='POST':
        # 获取参数
        data=request.data
        # 对参数进行验证，如果有json.loads()
        if data:
            data=json.loads(data)
        # 如果没有去from中获取
        else:
            data=request.form
        # 添加
        cate=Cate(name=data['name'])
        db.session.add(cate)
        # 提交
        db.session.commit()
        # 返回结果
        return jsonify({'code':200})

    elif request.methods=='GET':
        # 查询所有数据
        # 1.获取所有数据
        cates=Cate.query.all()
        # 2.把数据分装成列表
        list=[]
        # 判断有分类
        if cates:
            # 遍历加到列表中
            for i in cates:
                dict={'id':i.id,'name':i.name}
                list.append(dict)
        # 返回json
        return jsonify({"code":200,'list':list})


if __name__=="__main__":
    app.run(debug=True)